if
, when
, এবং cond
এর ব্যবহারক্লোজারে শর্ত নির্ধারণের জন্য বেশ কিছু অপশন আছে, তার মধ্যে if
, when
, এবং cond
সবচেয়ে সাধারণ এবং বহুল ব্যবহৃত। এগুলো শর্ত অনুযায়ী কোডের প্রবাহ নিয়ন্ত্রণ করতে সহায়ক। এই তিনটি অপশনের কাজ, ব্যবহারের পদ্ধতি, এবং উদাহরণ নিচে আলোচনা করা হলো:
if
ফাংশনif
ফাংশন একটি সাধারণ কন্ডিশনাল স্টেটমেন্ট, যা একটি একক শর্ত চেক করে। যদি শর্তটি সত্য হয়, তাহলে এটি প্রথম এক্সপ্রেশনটি রিটার্ন করে, আর মিথ্যা হলে দ্বিতীয় এক্সপ্রেশনটি রিটার্ন করে।
(defn check-even [n]
(if (even? n)
"Even"
"Odd"))
(check-even 4) ; আউটপুট: "Even"
(check-even 5) ; আউটপুট: "Odd"
এখানে, check-even
ফাংশনটি একটি সংখ্যা n
চেক করে যে এটি সোজা (even) নাকি বিচ্ছিন্ন (odd)। যদি n
সোজা হয়, তাহলে "Even"
রিটার্ন করে, অন্যথায় "Odd"
রিটার্ন করে।
when
ফাংশনwhen
ফাংশন একটি শর্ত চেক করে এবং যদি শর্তটি সত্য হয়, তবে এক বা একাধিক এক্সপ্রেশন চালায়। এটি সাধারণত তখন ব্যবহৃত হয় যখন একাধিক কাজ করতে হয় যদি শর্তটি সত্য হয়। তবে, শর্তটি মিথ্যা হলে এটি কিছুই রিটার্ন করে না।
(defn print-positive [n]
(when (pos? n)
(println "The number is positive.")
(println "Positive numbers are greater than zero.")))
(print-positive 5)
; আউটপুট:
; "The number is positive."
; "Positive numbers are greater than zero."
(print-positive -3)
; আউটপুট: কিছুই না
এখানে, print-positive
ফাংশনটি n
এর মান ধনাত্মক কিনা চেক করে। যদি n
ধনাত্মক হয়, তাহলে এটি দুটি বার্তা প্রিন্ট করে। কিন্তু যদি n
নেতিবাচক হয়, তাহলে কিছুই প্রিন্ট করবে না।
cond
ফাংশনcond
একটি কন্ডিশনাল স্টেটমেন্ট যেখানে একাধিক শর্ত পরীক্ষা করা হয়। এটি অনেকগুলো if-else
শর্ত একসাথে চেক করতে সাহায্য করে। প্রতিটি শর্ত এবং সংশ্লিষ্ট এক্সপ্রেশন পেয়ার আকারে থাকে এবং প্রথম যে শর্ত সত্য হয়, সেটির সাথে মিলিত এক্সপ্রেশনটি রিটার্ন হয়।
(defn categorize-number [n]
(cond
(neg? n) "Negative"
(zero? n) "Zero"
(pos? n) "Positive"))
(categorize-number -5) ; আউটপুট: "Negative"
(categorize-number 0) ; আউটপুট: "Zero"
(categorize-number 10) ; আউটপুট: "Positive"
এখানে, categorize-number
ফাংশনটি n
এর মান অনুযায়ী তিনটি শর্ত চেক করে: নেতিবাচক, শূন্য, এবং ধনাত্মক। প্রথম যে শর্ত সত্য হয়, সেটির সংশ্লিষ্ট মান রিটার্ন হয়।
if
, when
, এবং cond
এর পার্থক্য ও ব্যবহারফাংশন | ব্যবহারের উদ্দেশ্য | কিভাবে কাজ করে |
---|---|---|
if | একটি একক শর্ত চেক করার জন্য ব্যবহৃত হয় | শর্ত সত্য হলে প্রথম এক্সপ্রেশন, মিথ্যা হলে দ্বিতীয় |
when | একটি শর্ত সত্য হলে একাধিক এক্সপ্রেশন চালায় | শর্ত মিথ্যা হলে কিছুই রিটার্ন করে না |
cond | একাধিক শর্ত চেক করার জন্য ব্যবহৃত হয় | প্রথম যে শর্ত সত্য হয়, সেটির এক্সপ্রেশন চালায় |
এই ফাংশনগুলো শর্ত অনুযায়ী কোডের প্রবাহ নিয়ন্ত্রণ করতে ব্যবহৃত হয় এবং বিভিন্ন পরিস্থিতিতে বিভিন্ন ধরনের লজিক প্রয়োগ করতে সহায়ক।
common.read_more